﻿using System.Collections.Generic;
using System.Linq.Expressions;

namespace SageKing.Core.Contracts.FilterTypes;

public interface IFieldFilterType
{
    SageKingFilterCompareOperator DefaultCompareOperator { get; }
    IEnumerable<SageKingFilterCompareOperator> SupportedCompareOperators { get; set; }
    Dictionary<string, object> InputAttributes { get; }
    Expression GetFilterExpression(SageKingFilterCompareOperator compareOperator, Expression currentValueExpr, Expression filterValueExpr);
}
